package cn.iocoder.yudao.module.activity.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

@Schema(description = "管理后台 - 招聘活动新增/修改 Request VO")
@Data
public class ActivitySaveReqVO {

    @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "10340")
    private Long id;

    @Schema(description = "活动名称", example = "李四")
    private String activityName;

    @Schema(description = "发起企业ID", example = "16103")
    private Long companyId;

    @Schema(description = "发起企业名称", example = "王五")
    private String companyName;

    @Schema(description = "活动开始时间")
    private LocalDateTime startTime;

    @Schema(description = "活动结束时间")
    private LocalDateTime endTime;

    @Schema(description = "报名开始时间")
    private LocalDateTime registrationStart;

    @Schema(description = "报名结束时间")
    private LocalDateTime registrationEnd;

    @Schema(description = "省份编码")
    private String provinceCode;

    @Schema(description = "省份名称", example = "张三")
    private String provinceName;

    @Schema(description = "城市编码")
    private String cityCode;

    @Schema(description = "城市名称", example = "王五")
    private String cityName;

    @Schema(description = "区县编码")
    private String districtCode;

    @Schema(description = "区县名称", example = "李四")
    private String districtName;

    @Schema(description = "详细地址")
    private String address;

    @Schema(description = "经度")
    private BigDecimal longitude;

    @Schema(description = "纬度")
    private BigDecimal latitude;

    @Schema(description = "联系人")
    private String contactPerson;

    @Schema(description = "联系电话")
    private String contactPhone;

    @Schema(description = "联系邮箱")
    private String contactEmail;

    @Schema(description = "活动展示图(多个URL用逗号分隔)")
    private String images;

    @Schema(description = "活动描述", example = "随便")
    private String description;

    @Schema(description = "备注信息", example = "你猜")
    private String remark;

    @Schema(description = "状态(0:未开始 1:进行中 2:已结束 3:已取消)", example = "1")
    private Integer status;

    @Schema(description = "最大参与人数")
    private Integer maxParticipants;

    @Schema(description = "当前报名人数")
    private Integer currentParticipants;

    @Schema(description = "浏览次数", example = "1730")
    private Integer viewCount;

    @Schema(description = "是否推荐(0:否 1:是)")
    private Integer isFeatured;

    @Schema(description = "创建者")
    private String creator;

    @Schema(description = "更新者")
    private String updater;
    /**
     * 租户id
     */
    @Schema(description = "租户")
    private Integer tenantId;
}